System, apparatus and methods for storing links to media files in network storage

ABSTRACT

When a user purchases digital rights to a media file, or otherwise obtains the right to have a copy of the media file downloaded to the user&#39;s wireless device, a link to the media file that is stored in the media database is stored in a user storage database. When the user desires to have the media file downloaded to the user&#39;s wireless device, the user sends a request to the network. The network performs a check to determine whether the user is authorized to receive the requested media file, and if so, causes the requested media file to be downloaded to the user&#39;s wireless device where the media file is stored in the local memory of the wireless device for playback by the user on the wireless device.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to wireless technology. More particularly, theinvention relates to a system in which links to media files are storedin network storage to obviate the need to store multiple copies of mediafiles in network storage.

2. Description of the Related Art

Third generation (3G) wireless networks provide high-speed datatransmission and make it easier for users to download content such assongs, videos, games and graphics. As these networks are launched, oneof the constraints on downloading content is device memory capacity.Generally, users have two options when they run low on memory. Oneoption is to copy local files to removable storage media. The otheroption is to store content at the network level that they can lateraccess to retrieve the content.

As more and more people purchase content that they store in networkstorage, the network could potentially store multiple copies of the samefile, which is a waste of network resources. For example, if 1,000people store the same music selection in a network provider's mediadatabase, the network provider's resources are wasted.

A need exists for a method and apparatus that obviate the need to storemultiple copies of the same file in network storage.

SUMMARY OF THE INVENTION

The invention provides an apparatus, a system and a method for storinglinks to media files in network storage that are used to access mediafiles stored in network storage. The system comprises a user storagedatabase having links to media files stored therein, a media storagedatabase having media files stored therein, authentication logic thatdetermines whether a user is authorized to receive one or more mediafiles, and download logic. The download logic receives a request to senda media file to a wireless device. The request includes a linkassociated with a media file and an identifier that identifies thewireless device to which the media file is to be sent. The downloadlogic uses the link included in the request to retrieve the media fileassociated with the link from the media storage database. The downloadlogic sends the retrieved media file to the identified wireless deviceif the authentication logic determines that a user associated with theidentified wireless device is authorized to receive the media file.

The method of the invention comprises storing links to media files in auser storage database, storing media files in a media storage database,receiving a request from a wireless device to download a media file tothe wireless device, determining whether or not a user associated withthe wireless device is authorized to receive the media file associatedwith the link included in the request, and if a determination is madethat the user is authorized to receive the media file associated withthe link included in the request, retrieving the media file associatedwith the link from the media storage database and sending the retrievedmedia file to the wireless device.

The apparatus of the invention is a wireless device comprising uploadlogic for uploading a link to a media file to network storage. Theupload logic comprises first logic configured to receive a request tomove a media file from local memory of the wireless device to networkstorage, second logic configured to interpret the request as a requestto store a link to the media file in network storage, and third logicconfigured to cause a request to store the link in network storage to besent to the network.

The invention also provides a method for uploading a link to a mediafile from a wireless device to network storage. The method comprisesreceiving a request in a wireless device to move a media file from localmemory of the wireless device to network storage, interpreting therequest received in the wireless device as a request to store a link tothe media file in network storage, and generating a request in thewireless device to store a link to the media file in network storage.

These and other features and advantages of the invention will becomeapparent from the following description, drawings and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a block diagram of the system of the invention forenabling users to store links to files in network storage, which aresubsequently used to cause the files associated with the links to bedownloaded to the user's mobile device.

FIG. 2 illustrates a flow chart that represents the method of theinvention in accordance with an embodiment for storing links in a userstorage database shown in FIG. 1.

FIG. 3 illustrates a flow chart that represents the method of theinvention in accordance with an embodiment for downloading media filesfrom the media storage database shown in FIG. 1.

FIG. 4 illustrates a flow chart that represents the method of theinvention in accordance with an embodiment for uploading links to mediafiles from the user's wireless device to the user storage database.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

In accordance with the invention, media files are saved in a mediadatabase in a network. Preferably, no more than a single copy of anygiven media file is stored in the media database, which prevents networkresources from being wasted due to storing multiple copies of the samemedia file. When a user purchases digital rights to a media file, orotherwise obtains the right to have a copy of the media file downloadedto the user's wireless device, a link to the media file that is storedin the media database is stored in a user storage database. When theuser desires to have the media file downloaded to the user's wirelessdevice, the user sends a request to the network. The network performs acheck to determine whether the user is authorized to receive therequested media file. This may be accomplished by, for example,determining whether a link to the requested file is stored in the userstorage database for the user. If a determination is made that the useris authorized to receive the requested media file, the requested mediafile is sent to the user's wireless device where the media file isstored in the local memory of the wireless device for playback by theuser on the wireless device.

FIG. 1 illustrates a block diagram of the system 10 of the invention forstoring links to media files that can be subsequently used to causemedia files to be downloaded to a user's wireless device 1. The wirelessdevice 1 may be any type of wireless device having the functionality forstoring a media file and playing back the media file, such as, forexample, a wireless telephone, which typically are not capable ofstoring a large number of media files (e.g., musical selections) inlocal memory.

The manner in which the system 10 of the invention operates inaccordance with an exemplary embodiment will now be described withreference to FIG. 1. The system 10 may comprise components that areconnected to a public network, such as the Internet, for example.Alternatively, the system 10 may comprise components that are connectedto a private network. Typically, all of the system components thatcommunicate with each other have Internet Protocol (IP) addresses,regardless of whether they are connected to the Internet or to a privatenetwork.

In order to store links to media files in network storage, a user sendsa request to store links to the application server 20 via a wirelesspacket-switched network 2, which is typically a General Packet RadioServices (GPRS) network, but may be any type of packet-switched network.The process of sending the request is performed by a client processorresiding on the wireless device 1. A Serving GPRS Support Node (SGSN) 3performs tunneling and detunneling of Internet Protocol packets andmobility management functions. A Gateway GPRS Support Node (GGSN) 4detunnels data packets received from the SGSN 3 and routes them to anapplication server 20 of the system 10. The packets are sent from thewireless device 1, through the GGSN 4 to the application server 20 in aHypertext Transfer Protocol (HTTP) session using Transmission ControlProtocol/Internet Protocol (TCP/IP). The application server 20 has an IPaddress to which the GGSN 4 sends the packets.

The wireless device may also include functionality that enables it toaccess the application server 20 through a proxy gateway 70. This willallow the proxy gateway 70 to add subscriber identification informationto the packets (e.g.,, the Mobile Station Integrated Services DigitalNetwork (MSISDN) number of the wireless device 1). In this case, thewireless device 1 also passes User Agent (UA) header information in theHTTP request that will allow the application server 20 to determinewhich wireless device the subscriber is currently using. The user agentstorage database 80 contains profile information about user devices,which includes information about the capabilities of the devices. Theapplication server 20 uses the UA header information to retrieve profileinformation from the user agent storage database 80. The applicationserver 20 uses the retrieved profile information to identify thecapabilities of the wireless device. Based on the retrieved profileinformation, logic contained in the download server 50 translates, ifnecessary, files retrieved from the media storage database 60 into filesthat the user's wireless device is capable of playing back.

When the application 20 receives the request to store links, theapplication server 20 performs an authentication algorithm to determinewhether the user has a subscription to use the system 10 and/or todetermine whether or not the user has purchased the digital rights(e.g., license keys) for the media files associated with the links. Theapplication server 20 may query a billing server 30 for userauthentication and paid subscriptions. If the user has not purchaseddigital rights and/or has not purchased a subscription, the billingserver 30 may charge a monetary amount to an account associated with theuser.

Once the application server 20 has performed authentication, it storesthe links in the user storage database 40 in a location associated withthe user. For example, the Mobile Station Integrated Services DigitalNetwork (MSISDN) of the user's wireless device may be translated into anaddress that is used to access the user storage database 40. Otheridentifiers may be used for this purpose, such as, for example, theInternational Mobile Subscriber Identity (IMSI) associated with user'swireless device 1.

The links may be the names of the media files (e.g., the title of amusic selection), which would be translated by the download server intoaddresses in the media storage database. Once the links have been storedin the local storage of the wireless device 1, they are available to bebundled into link storage requests and sent to the application server 20for storage in the user storage database 40. A link can be anything thatcan be used to access a file on a network, including a hyperlink, a filename, a database address, etc.

When the user wants to have a media file downloaded to the local storageon the user's wireless device 1, the user sends a download request viawireless network 2 to the download server 50 of system 10. The downloadrequest includes the link or links to the media files to be downloadedand a user identifier, such as the MSISDN or IMSI associated with theuser's wireless device 1. The download server 50 forwards the downloadrequest to the application server 20, which then checks the user storagedatabase 40 to determine whether the links are stored in the location inthe user storage database 40 associated with the user. If so, theapplication server 20 informs the download server 50 that the user hasauthorization for the requested media file or files. The download server50 then causes the requested media files to be retrieved from the mediastorage database 60 and downloaded to the user's wireless device. TheSGSN 3 checks the HLR 5 to determine the location of the wireless device1 so that the files can be downloaded to the user's wireless device 1even when the wireless device 1 is roaming.

Before the user can send a request to store links to the applicationserver 20, the user first obtains the links. This can be accomplished ina number of ways. One way to do this is to allow the user to search themedia storage database 60. In order to perform a search, the user sendsa search request to the download server 50 via the wireless network 2.The download server 50 retrieves a list of media files from the mediastorage database, and sends the list to the user's wireless device 1.The list is then displayed on a display device (not shown) of thewireless device 1. The user is able to peruse the list and makeselections using an input device (e.g., a keypad) of the wireless device1. When the user selects media files, the links associated with themedia files are saved in the local memory of the wireless device 1. Thelocally stored links are subsequently uploaded to the application server20 to cause the associated media files to be downloaded by the downloadserver 50 to the user's wireless device 1.

FIG. 2 illustrates a flow chart that represents the method of theinvention in accordance with an embodiment for storing links in a userstorage database 40. The user sends a request to store links toapplication server 20, as indicated by block 101. The application server20 performs authentication, as indicated by block 102. If authenticationis not successful, the user is notified and may be given an opportunityto pay or authorize payment in order to satisfy authenticationrequirements, as indicated by block 103. If authentication issuccessful, the application server 20 stores the links in the userstorage database in a location associated with the user or with theuser's wireless device, as indicated by block 104.

FIG. 3 illustrates a flow chart that represents the method of theinvention in accordance with an embodiment for requesting downloading ofmedia files. The user sends a download request to the download server50, as indicated by block 111. The download server 50 sends a requestfor verification to the application server, as indicated by block 112.The verification request is a request to verify that the user isauthorized to have the requested media file or files downloaded to theuser's wireless device. The application server 20 checks the userstorage database 40 to determine whether links associated with therequested media files are stored in the user storage database 40, asindicated by block 113. If not, a message is sent to the user's wirelessdevice indicating that the user is not authorized to have one or more ofthe requested media files downloaded, as indicated by block 114. Theuser may be informed as to how to obtain authorization for theunauthorized media files. If verification is successful, the applicationserver 20 informs the download server 50 that the user has authorizationfor the requested media files, as indicated by block 115. The downloadserver 50 then retrieves the requested media file or files from themedia storage database 60 and downloads them to the local storage of theuser's wireless device, as indicated by block 116.

In some cases, a user may have already purchased from some source anddownloaded the media file to the user's wireless device 1. Because localmemory of the wireless device 1 is typically not sufficiently large tostore a large number of media files, the user may want to store themedia file in network storage and delete it from local memory. FIG. 4illustrates a block diagram that represent the method of the inventionin accordance with an embodiment, for storing a link to the media file,rather than the media file itself, in network storage.

The wireless device 1 in accordance with the invention includes uploadlogic that processes a user request to move a media file from the localmemory of the wireless device 1 into network storage. To accomplishthis, the user causes the title of the media file, or some otheridentifier that identifies the media file, to be displayed on thedisplay device of the wireless device 1, as indicated by block 121. Theuser then makes an appropriate selection to cause the media file to bemoved from local storage to network storage, as indicated by block 123.Steps 121 and 123 will typically be performed by using an input device,such as a keypad, of the wireless device 1 to make appropriateselections. For example, the user may press a button or series ofbuttons on the keypad to cause all media files stored in local memory tobe displayed and another button or series of buttons to select aparticular media file or files to be moved from local storage to networkstorage.

When the user makes a selection to move a media file from local storageto network storage, the upload logic of the wireless device 1 interpretsthis selection as a request to store a link to the media file in networkstorage, as indicated by block 125. The upload logic then causes thelink to be sent to the application server 20, which stores the link inthe user storage database at a location associated with the user, asindicated by block 127. The upload logic preferably also causes themedia file to be deleted from the local memory of the wireless device 1,as indicated by block 129.

That the link rather than the media file itself is uploaded to networkstorage need not be apparent to the user. For example, the user may makea selection that indicates that the media file is being uploaded tonetwork storage, although only the link is actually uploaded. Inaddition to the steps shown in FIG. 4, the application server 20 mayperform authentication or verification process as described above toensure that the user is a subscriber to the system 10, or is otherwiseauthorized to use the corresponding media file.

It should be noted that the invention is not limited to the embodimentsdescribed above with reference to FIGS. 1-4. Modifications may be madeto the embodiments described herein and all such modifications arewithin the scope of the invention. For example, particular tasks havebeen described as being performed by particular network elements, e.g.,the application server 20 and the download server 50. These tasks may beperformed by a single component, e.g., a single server instead of bymultiple network components. The invention is not limited to particulartasks being performed by particular network elements. Othermodifications may be made to the embodiments described herein and allsuch modifications are within the scope of the invention.

1. A system for storing links to media files in network storage that areused to access media files stored in network storage, the systemcomprising: a user storage database having links to media files storedtherein; a media storage database having media files stored therein;authentication logic that determines whether a user is authorized toreceive one or more media files; and download logic, the download logicreceiving a request to send a media file to a wireless device, therequest including a link associated with a media file and an identifierthat identifies the wireless device to which the media file is to besent, the download logic using the link included in the request toretrieve the media file associated with the link from the media storagedatabase, the download logic sending the retrieved media file to theidentified wireless device if the authentication logic determines that auser associated with the identified wireless device is authorized toreceive the media file.
 2. The system of claim 1, wherein the link is anaddress in the media storage database.
 3. The system of claim 1, whereinthe link is a media file title, the download logic translating the mediafile title into an address in the media storage database.
 4. The systemof claim 1, wherein the wireless device identifier is a Mobile StationIntegrated Services Digital Network (MSISDN) number associated with theidentified wireless device.
 5. The system of claim 1, wherein thewireless device identifier is an International Mobile SubscriberIdentity (IMSI) number associated with the identified wireless device.6. The system of claim 1, wherein if the authentication logic determinesthat a user associated with the identified wireless device is notauthorized to receive the media file, the authentication logic sends anotification to the identified wireless device notifying the userassociated with the identified wireless device that the user is notauthorized to receive the media file associated with the link includedin the request.
 7. The system of claim 1, wherein the authenticationlogic makes the determination as to whether a user is authorized toreceive a requested media file by checking a billing file to determinewhether or not the user has obtained digital rights associated with therequested media file.
 8. The system of claim 1, wherein theauthentication logic makes the determination as to whether a user isauthorized to receive a requested media file by checking a billing fileto determine whether or not the user has paid a subscription fee.
 9. Awireless device comprising upload logic for uploading a link to a mediafile to network storage, the upload logic comprising: first logicconfigured to receive a request to move a media file from local memoryof the wireless device to network storage; second logic configured tointerpret the request as a request to store a link to the media file innetwork storage; and third logic configured to cause a request to storethe link in network storage to be sent to the network.
 10. A method forstoring links to media files in network storage that are used to accessmedia files stored in network storage, the method comprising: storinglinks to media files in a user storage database; storing media files ina media storage database; receiving a request from a wireless device todownload a media file to the wireless device, the request including alink associated with a media file and an identifier that identifies thewireless device; determining whether or not a user associated with thewireless device is authorized to receive the media file associated withthe link included in the request; and if a determination is made thatthe user is authorized to receive the media file associated with thelink included in the request, retrieving the media file associated withthe link from the media storage database and sending the retrieved mediafile to the wireless device.
 11. The method of claim 10, wherein eachlink is an address in the media storage database.
 12. The method ofclaim 10, wherein each link is a media file title, the step ofretrieving including translating the media file title included in therequest into an address in the media storage database.
 13. The method ofclaim 10, wherein the wireless device identifier is a Mobile StationIntegrated Services Digital Network (MSISDN) number associated with theidentified wireless device.
 14. The method of claim 10, wherein thewireless device identifier is an International Mobile SubscriberIdentity (IMSI) number associated with the identified wireless device.15. The method of claim 10, further comprising: if a determination ismade that a user associated with the identified wireless device is notauthorized to receive the media file, sending a notification to theidentified wireless device that notifies the user associated with theidentified wireless device that the user is not authorized to receivethe media file associated with the link included in the request.
 16. Themethod of claim 10, wherein the determination as to whether a user isauthorized to receive a requested media file is made by checking abilling file to determine whether or not the user has obtained digitalrights associated with the requested media file.
 17. The method of claim10, wherein the determination as to whether a user is authorized toreceive a requested media file is made by checking a billing file todetermine whether or not the user has paid a subscription fee.
 18. Amethod for uploading a link to a media file from a wireless device tonetwork storage, the method comprising: in upload logic of a wirelessdevice, receiving a request to move a media file from local memory ofthe wireless device to network storage; in the upload logic,interpreting the request as a request to store a link to the media filein network storage; and in the upload logic, generating a request tostore a link to the media file in network storage.
 19. A computerprogram stored on a computer-readable medium, the program comprising: afirst instruction set for storing links to media files in a user storagedatabase; a second instruction set for storing media files in a mediastorage database; a third instruction set for receiving a request from awireless device to download a media file to the wireless device, therequest including a link associated with a media file and an identifierthat identifies the wireless device; a fourth instruction set fordetermining whether or not a user associated with the wireless device isauthorized to receive the media file associated with the link includedin the request; and a fifth instruction set, wherein if a determinationis made that the user is authorized to receive the media file associatedwith the link included in the request, the fifth instruction setretrieving the media file associated with the link from the mediastorage database and sending the retrieved media file to the wirelessdevice.